VSCode 远程开发

您所在的位置:网站首页 vscode remote terminal VSCode 远程开发

VSCode 远程开发

#VSCode 远程开发| 来源: 网络整理| 查看: 265

因为某些原因,需要使用一台电脑远程开发另外一台电脑的代码,于是VSCode远程开发就是一个很好的方式,而且两台电脑都是win10系统

开启SSH

作为服务器的电脑需要安装并开启Openssh 的 Server 服务

查看是否安装

该服务的作用是让你可以在终端使用ssh指令,Windows10通常自带OpenSSH不需要安装。

在Win10应用中选择 Windows PoweShell(管理员)输入以下指令: Get-WindowsCapability -Online | ? Name -like 'OpenSSH*' 如果电脑未安装OpenSSH,则State会显示NotPresent:

image.png

如果都是NotPresent可直接跳过接下来的安装

鼠标操作安装

鼠标操作相对无脑一点,鼠标点点点就好了。

点击win键,弹出的菜单中选择设置按钮

未标题-1.png

在windows设置中,点击应用

image.png

弹出的应用和功能界面中,点击管理可选功能

image.png

点击如图所示的添加功能

image.png

可选功能下面找到OpenSSH server,并点击

image.png

点击如图所示的安装,等待安装完成即可。如需安装openssh client同样的方法

image.png

image.png

重启电脑,打开命令行工具,输入ssh,显示如图所示说明安装成功

image.png

安装成功如下图

image.png

命令行操作安装

命令行操作相对简单些

安装server Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0 安装client Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

image.png

配置服务默认启动 点击工具栏的搜索按钮,弹出的搜索界面中搜索服务

未标题-1.png

打开的服务界面中,找到OpenSSH Server,右键属性

image.png

设置为自动启动

image.png

启动服务 VSCode配置远程服务器 安装Remote-SSH

Remote-SSH是VScode的插件,安装完VScode以后,直接在插件中搜索ssh,即可找到Remote-SSH,点击install安装

image.png

配置

安装完Remote-SSH以后左侧会出现一个远程资源管理的图标,选择SSH Targets,进入config配置文件

image.png

在配置文件中设置服务器信息,输入HostName和User,保存以后左侧会出现对应机器名称

image.png

更改设置,File->Preferences->Settings->Extension->Remote-SSH,找到Show Login Terminal并勾选。

image.png

VSCode使用远程服务器

点击SSH TARGETS下的服务器旁边的按钮纽行连接,选择服务器的平台,弹出让你输入密码

image.png

image.png

成功连上服务器,点击右侧的+号创建服务器的终端窗口,可以正常使用了!

image.png

我们还可以打开服务器的文件夹

image.png

打开以后可以看到服务器文件目录,直接在文件目录中选择文件进行编辑,实时同步到服务器上,这时候已经可以开始愉快的进行开发了,开发体验媲美本地开发!

通过跳板机链接服务器

有时候我们需要跳板机来连接服务器,也即先连接一台跳板机服务器,然后通过这台跳板机所在的内网再次跳转到目标服务器。最简单的做法就是按上述方法连接到跳板机,然后在跳板机的终端用ssh指令跳转到目标服务器,但这样跳转后,我们无法在VScode中打开服务器的文件目录,操作起来很不方便。

我们可以在config中设置两个服务器,一个是跳板机,一个是内网服务器 首先使用VSCode登录跳板机,然后再登录内网服务器

image.png

外网访问

当外网访问,并且没有给我们的服务器分配ip的情况下,这时候要么是要求我们的网络运营商给我们分配一个ip地址,要么是使用内网穿透。

内网穿透 - 花生壳

大概意思就是通过技术手段从公网访问内网,可以参考下面这两篇文章。 zhuanlan.zhihu.com/p/57477087 www.bilibili.com/video/BV1bi… \

花生壳配置 image.png

编辑C:\Users\yourname.ssh\config文件指定花生壳分配的端口 image.png

尝试在windows客户端登录 ssh username@花生壳域名 -p 花生壳端口

当出现 Bad owner or permissions on C:\\Users\\ 时

windows系统

进入如下路径C:\Users\用户名.ssh,你会看到有config这个文件 右击config,属性→安全→高级→禁止继承→删除所有继承(忘了全称了,大概这个意思) →确定 ,如果系统是英文: Properties -> Security -> Advanced -> Disable Inheritance -> Remove all inherited permissions from this object 然后尝试手动编辑config这个文件,当不能编辑时,手动在属性→安全→编辑中添加当前用户,并且权限“允许”全部勾选 SSH免密登录

简化登录需要输入密码。

客户端生成公私钥

在cmd下输入ssh-kengen -t rsa -b 4096 或者 ssh-kengen 然后一路回车

image.png

上传公钥到服务器

生成的密钥id_rsa和公钥id_rsa.pub文件都默认保存在(C:\User\用户/.ssh)文件夹下)

image.png

在cmd下输入

SET REMOTEHOST=your-user-name-on-host@host-fqdn-or-ip-goes-here scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub" 复制代码

第一行作用相当于设置变量名,REMOTEHOST设置格式为“你在服务器的用户名@服务器的ip地址” 例如我在服务器的用户名是“lpy”,远程服务器的ip为49.52.10.120,那么我的第一行代码就是 SET [email protected]

第二行scp命令的详细知识可以参考scp使用说明,它是Linux系统下基于ssh登陆进行安全的远程文件拷贝命令。知道这条命令的作用之后,我们就能知道前半部分是本地公钥文件的位置,后半部分是远程服务器端当前目录下名为tmp.pub的文件,我们要把本地的公钥拷贝到这个临时文件里。

%USERPROFILE%就是本地主机的用户名,在C:\Users这里找,%REMOTEHOST%是我们刚刚已经SET过的哦,就不用管它啦。

测试免密登录 ssh [email protected] 复制代码 参考 使用VScode连接远程服务器的配置方法 win10电脑如何安装Openssh?开启Server服务? windows10下Bad owner or permissions on .ssh/config的解决办法 解决Bad owner or permissions on .ssh/config 的问题 Win 10+SSH+内网穿透+VS code远程开发踩坑避雷


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3